﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Cotizav.CONTROLADOR;
using Cotizav.CONEXION;
using Cotizav.PRESENTACION.CartaCompromiso.Reporte;

namespace Cotizav.PRESENTACION.CartaCompromiso
{
    public partial class IUCartaCompromiso : UserControl
    {
        private CtrlCartaCompromiso ctCartaCompromiso;
        private CtrlCartaCompromisoDetalle ctCartaDetalle;

        private CARTA_COMPROMISO cartaCompromiso;
        private List<CARTACOMPROMISO_DETALLE> selectedListCartaCompromisoDetalle;
        
        public IUCartaCompromiso()
        {
            InitializeComponent();

            ctCartaCompromiso = new CtrlCartaCompromiso();
            ctCartaDetalle = new CtrlCartaCompromisoDetalle();

            selectedListCartaCompromisoDetalle = new List<CARTACOMPROMISO_DETALLE>();
        }

        internal void mostrarCartaCompromiso(string idCartaCompromiso)
        {
            cartaCompromiso = ctCartaCompromiso.getCartaCompromiso(idCartaCompromiso);
            selectedListCartaCompromisoDetalle = ctCartaDetalle.getListCartaCompromisoDetalle(idCartaCompromiso);

            gbInformacionBasica.Tag = cartaCompromiso.idCartaCompromiso;
            txtFechaRegistro.Text = cartaCompromiso.fechaCartaCompromiso.HasValue ? cartaCompromiso.fechaCartaCompromiso.Value.ToShortDateString() : string.Empty;
            txtNumeroCarta.Text = cartaCompromiso.numeroCarta;
            txtCliente.Text = cartaCompromiso.nombrecliente;
            txtVendedor.Text = cartaCompromiso.nombreVendedor;
            txtReferencia.Text = cartaCompromiso.referencia1;

            gridEquiposRegistrados.DataSource = null;
            gridEquiposRegistrados.DataSource = selectedListCartaCompromisoDetalle;
        }

        private void gridEquiposRegistrados_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
        {
            if (gridEquiposRegistrados.DataSource != null)
            {
                gridEquiposRegistrados.Columns["idCartaCompromisoDetalle"].Visible = false;
                gridEquiposRegistrados.Columns["idcartacompromiso"].Visible = false;
                gridEquiposRegistrados.Columns["idequipo"].Visible = false;
                gridEquiposRegistrados.Columns["secuencia"].Visible = false;
                gridEquiposRegistrados.Columns["nombreEquipo"].HeaderText = "Equipo";
                gridEquiposRegistrados.Columns["nombreEquipo"].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
                gridEquiposRegistrados.Columns["EQUIPO"].Visible = false;
                gridEquiposRegistrados.Columns["CARTA_COMPROMISO"].Visible = false;
            }
        }

        private void btnVerDocumento_Click(object sender, EventArgs e)
        {
            if (gbInformacionBasica.Tag != null)
            {
                string idCartaCompromiso = gbInformacionBasica.Tag.ToString();

                if (!string.IsNullOrWhiteSpace(idCartaCompromiso))
                {
                    ReporteCartaCompromiso iuRepCartaCompromiso = new ReporteCartaCompromiso(idCartaCompromiso);
                    iuRepCartaCompromiso.MdiParent = this.ParentForm.MdiParent;
                    iuRepCartaCompromiso.Show();
                }
            }
        }
    }
}
